Vehicle connectivity systems, methods, and applications

ABSTRACT

A method of remotely starting a vehicle using a remote device is provided. The method includes: receiving a first temperature associated with the vehicle; evaluating the first temperature at the remote device; and initiating the starting of the vehicle by generating a signal to the vehicle based on the start request and the first temperature.

CROSS-REFERENCE

This patent application claims priority to U.S. Provisional PatentApplication Ser. No. 61/313,543 filed Mar. 12, 2010 which isincorporated herein by reference in its entirety.

FIELD OF THE INVENTION

Exemplary embodiments of the present invention are related to systemsand methods for communicating with a network of a vehicle.

BACKGROUND

A vehicle typically includes a plurality of controllers and devices. Thecontrollers and devices communicate with each other using a vehicleon-board communication network. Such networks can include, for example,a vehicle bus that communicates according to a plurality ofcommunication protocols such as a combination of a high speed controllerarea network (CAN) bus, and a low speed CAN bus. Accordingly, it isdesirable to provide connectivity methods and systems to communicatewith the on-board communication network.

SUMMARY OF THE INVENTION

Accordingly, in one embodiment, a method of remotely starting a vehicleusing a remote device is provided. The method includes: receiving afirst temperature associated with the vehicle; evaluating the firsttemperature at the remote device; and initiating the starting of thevehicle by generating a signal to the vehicle based on the start requestand the first temperature.

The above features and advantages and other features and advantages ofthe invention are readily apparent from the following detaileddescription of the invention when taken in connection with theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Other objects, features, advantages and details appear, by way ofexample only, in the following detailed description of embodiments, thedetailed description referring to the drawings in which:

FIG. 1 is a functional block diagram of a communication system thatincludes a vehicle that communicates with various remote devices using aconnectivity device in accordance with an exemplary embodiment;

FIG. 2 is a functional block diagram of a connectivity device inaccordance with an exemplary embodiment;

FIG. 3 is a dataflow diagram illustrating a message manager module ofthe connectivity device in accordance with an exemplary embodiment;

FIGS. 4 and 5 are flowcharts illustrating message manager methods thatcan be performed by the message manager module in accordance withexemplary embodiments;

FIG. 6 is a dataflow diagram illustrating an exemplary connectivityapplication in accordance with an exemplary embodiment; and

FIG. 7 is an illustration of an exemplary connectivity interface inaccordance with an exemplary embodiment; and

FIGS. 8 and 9 are flowcharts illustrating an exemplary connectivitymethod that can be performed by a connectivity application in accordancewith an exemplary embodiment.

DESCRIPTION OF THE EMBODIMENTS

The following description is merely exemplary in nature and is notintended to limit the present disclosure, its application or uses. Itshould be understood that throughout the drawings, correspondingreference numerals indicate like or corresponding parts and features. Asused herein, the term module refers to an application specificintegrated circuit (ASIC), an electronic circuit, a processor (shared,dedicated, or group) and memory that executes one or more software orfirmware programs, one or more software or firmware programs, acombinational logic circuit, and/or other suitable components thatprovide the described functionality.

In accordance with various embodiments of the invention a communicationsystem of a vehicle 12 is shown generally at 10. The vehicle includesone or more control modules and/or devices 14 a-14 n that communicatevia a vehicle network 16. The control modules and/or devices 14 a-14 ncan include, for example, but are not limited to, an engine controlmodule, a transmission control module, a body control module, atelematics (i.e. Onstar) module, or other electronic modules or devicesresident within the vehicle 12. The vehicle network 16 can include anycombination of wired or wireless communication channels. For example,the vehicle network 16 can include a single communication bus or acombination of various communication busses that are implementedaccording to vehicle communication network standards, such as, forexample, Controller Area Network (CAN), Society of Automotive Engineers(SAE) J1850, and General Motors Local Areal Network (GMLAN).

The vehicle 12 further includes a communication port 18 (i.e. anassembly line diagnostic link (ALDL) port) that provides a data link tothe vehicle network 16. A connectivity device 20 couples to thecommunication port 18. In various embodiments, the connectivity device20 is a portable handheld device that removably couples to thecommunication port 18. In various other embodiments, the connectivitydevice 20 is integrated with the communication port 18 as a part of thevehicle 12.

The connectivity device 20 communicates data from the vehicle network 16to various remote devices 22 a-22 n, such as, for example, cell phones,computers (i.e., servers, desktops, laptops, etc.), or various otherelectronic devices. The connectivity device 20 communicates the dataaccording to one or more wireless communication protocols. In variousembodiments, the connectivity device 20 receives data from a satellitesystem 26 and communicates the data to the remote devices 22 a-22 nand/or the vehicle network 16.

The remote devices 22 a-22 n can be configured to include, for example,a processor 28, a storage medium 30, one or more input and/or output(I/O) devices (or peripherals) 32, a display 34, and a network interface36. The remote devices 22 a-22 n communicate with the portableconnectivity device 20 via the network interface 36 and using a networkprotocol that is applicable to the remote device 22 a-22 n.

The remote devices 22 a-22 n can be configured to include one or moreconnectivity applications 48. A connectivity application 48 includes oneor more software instructions that, when executed by the processor 28,download a corresponding device application to the connectivity device20 to enable communication between the vehicle 12 and the remote device22 a via the connectivity device 20. In various embodiments, theconnectivity application can be stored in the storage medium 30 of theremote device 22 a, can be downloaded from a remote storage device (i.e.a central server) (not shown), and/or can be accessed from a remotelocation (i.e. a client-server application).

The connectivity application 48 further processes data communicated fromthe vehicle 12 in one form or another and performs one or more actionsbased on the processed data. In various embodiments, the connectivityapplication 48 presents the processed data via an application interface50 through the display 34. In various embodiments, the connectivityapplication 48 communicates data or data requests back to the vehiclebased on the processed data. Operations of the connectivity application48 can be executed based on user input. User input to the connectivityapplication 48 can be received from the I/O devices 32 when the userinteracts with the application interface 50.

Referring now to FIG. 2, an exemplary connectivity device 20 isillustrated in accordance with various embodiments. The connectivitydevice 20 includes, for example, one or more network transceivers 60a-60 n, a message manager module 62, and one or more wirelesscommunication modules 64 a-64 n. The network transceivers 60 a-60 ncorrespond to the various communication channels of the vehicle 12. Forexample, network transceiver 1 can be a bidirectional high speed CANtransceiver, and network transceiver 2 can be a bidirectional low speedCAN transceiver, etc.

The one or more wireless communication modules 64 a-64 n corresponds tothe network protocols supported by the various remote devices 22 a-22 n.The one or more wireless communication modules 64 a-64 n can include forexample, but are not limited to, a telecommunications module 64 a, along range wireless module 64 b, and a short range wireless module 64 c.The telecommunications module 64 a transmits data to and receives datafrom telecommunication remote devices (i.e., the cell phone) accordingto a telecommunications protocol (i.e., GSM, CDMA, 3G, HSPA+, 4G, LTE,etc.) The long range wireless module 64 b transmits data to and receivesdata from the other long range remote devices, such as the computer,according to a long range wireless protocol (i.e., WiFi). The shortrange wireless module 64 c transmits data to and receives data fromclose range remote devices, such as when the remote devices 22 a-22 nare within the vehicle 12, according to a short range protocol (i.e.,BlueTooth).

In various embodiments, the wireless communications module 64 a-64 nfurther includes a satellite module 64 n. The satellite module 64 nreceives data from the global positioning satellite system 26 accordingto a satellite communications protocol.

The message manager module 62 manages the communication of the data toand from the network transceivers 60 a-60 n, the data to and from thewireless communication modules 64 a-64 c, and data from the satellitemodule 64 n. In various embodiments, the message manager module 62manages the communications by making use of a dynamically configurablemessage list.

Referring now to FIG. 3, a dataflow diagram illustrates variousembodiments of the message manager module 62 that may be embedded withinthe portable connectivity device 20 (FIG. 2). As can be appreciated,various embodiments of message manager modules 62 according to thepresent disclosure may include any number of sub-modules embedded withinthe message manager module 62. For example, the sub-modules shown inFIG. 3 may be combined and/or further partitioned to similarly managethe communications using the dynamically configurable message list. Invarious embodiments, the message manager module 62 includes a memorymanager 70, an application download manager module 72, and anapplication execution manager 74. The managers interface with a deviceapplication storage medium 76. The device application storage medium 76stores one or more device applications.

In various embodiments, the memory manager 70 manages the data contentstored in the device application storage medium 76. For example, withreference to FIGS. 3 and 4, when a new connectivity application 48(FIG. 1) has been downloaded to a remote device 22 a (FIG. 1) and theconnectivity application 48 (FIG. 1) communicates a new applicationrequest 78 to the connectivity device 20 (FIG. 2) at 102, the memorymanager 70 (FIG. 3) determines whether sufficient memory is available tostore the device application associated with the connectivityapplication 48 (FIG. 1) at 104. If sufficient memory is available at106, the memory manager 70 generates a download request 80 to theconnectivity application 48 (FIG. 1) of the remote device 22 a (FIG. 1)at 110. If, however, there is not sufficient memory at 106, the memorymanager selectively removes other device applications based on one ormemory management methods (i.e., first in first out, last in first out,remove least used, etc.) at 108 and generates the download request 80 tothe connectivity application 48 (FIG. 1) of the remote device 22 a(FIG. 1) at 110.

With reference to FIG. 3, the device application download manager module72 receives the device application 82 from the remote device 22 a(FIG. 1) and manages the storage of the device application 82 in thedevice application storage medium 76. The application execution manager74 then manages the execution of the device application 82 based on oneor more communications from the connectivity application 48 (FIG. 1) ofthe remote device 22 a (FIG. 1) and further based on one or morecommunications from the vehicle network 16 (FIG. 1).

A device application 82, as shown in FIG. 5, for example, receivescommunications 84 from the remote device 22 a (FIG. 1) through one ofthe wireless communication modules 64 a-64 n at 122. The deviceapplication 82 then manages the communications 84 based on whether thecommunication is a request for data from the vehicle 12 (FIG. 1) or datato be transmitted to the vehicle 12 (FIG. 1). For example, when thecommunication 84 includes data to be transmitted to the vehicle 12(FIG. 1) at 124, the device application 82 assembles the data into aconfigurable message of the configurable message list of the vehiclenetwork 16 at 130. The device application 82 then makes the messageavailable for transmittal by the network transceivers 60 a-60 n viaoutgoing communications 88 at 132. Likewise, when the communication 84includes a request for data at 124, the device application 82 monitorsthe vehicle network 16 for the message that includes the data viaincoming communications 90 at 126 and routes the data to the appropriatewireless communication module 64 a-64 n (FIG. 2) via outgoingcommunications 86 at 128.

Referring now to FIG. 6, a dataflow diagram illustrates variousembodiments of an exemplary connectivity application 48 of a remotedevice 22 a-22 n. In the example provided in FIG. 6, the connectivityapplication 48 is an ecostart application that communicates with thevehicle 12 (FIG. 1) to selectively start and stop the vehicle 12. Theecostart application selectively starts and stops the vehicle 12(FIG. 1) based on a user request, and further based on temperature datareceived from the vehicle 12 (FIG. 1). The vehicle data is used toselectively start and stop the engine of the vehicle 12 (FIG. 1) toconserve energy. As can be appreciated, the connectivity applications 48of the present disclosure can include various types of applications thatoperate based on communications with the vehicle 12 (FIG. 1) and are notlimited to the present example. For example, the connectivityapplications 48 can include, but are not limited to, a fuel level statusapplication, a battery charge status application, an unlock doorsapplication, etc.

In various embodiments, the connectivity application of FIG. 6 includesa user I/O manager 200, a temperature evaluator module 202, a start/stopmanager module 204, and a device application download manager module206. As can be appreciated, various embodiments of ecostart applicationsaccording to the present disclosure may include any number ofsub-modules. For example, the sub-modules shown in FIG. 6 may becombined and/or further partitioned to similarly start the vehicle 12(FIG. 1).

In various embodiments, the device application download manager module206 manages the transmitting of the device application 82 from theremote device 22 a (FIG. 1) to the connectivity device 20 (FIG. 1). Forexample, the device application download manager 206 generates the newapplication request 78 to the connectivity device 20 (FIG. 1). Once adownload request 80 is received, the device application download managermodule 206 transmits the device application 82 to the connectivitydevice 20 (FIG. 1). The device application download manager module 206updates a connectivity status 210 based on whether the deviceapplication 82 has been successfully downloaded to the connectivitydevice 20 (FIG. 1).

The user I/O manager 200 manages input requests initiated by the userwhen interacting with the application interface 50 (FIG. 1). Forexample, when the user initiates a start vehicle request 212, the userI/O manager 200 receives the start vehicle request 212 and generates atemperature request 214 to the device application 82 on the connectivitydevice 20. In another example, when the user initiates a vehicle stoprequest 216, the user I/O manager 200 passes the vehicle stop request216 to the start/stop manager module 204.

The user I/O manager further manages the application interface 50(FIG. 1) via the interface data 218. For example, as shown in FIG. 7,various input selection items and information output items can bedisplayed by the application interface 50. The input selection items caninclude, but are not limited to, a start selection item 250, and a stopselection item 252. The information output items can include, but arenot limited to, an inside temperature display 254, an outsidetemperature display 256, and a status display 258. The status display258 can display any status of the vehicle 12 (FIG. 1) (e.g., a fuellevel or battery charge level) or a status of the connection with thevehicle 12 (FIG. 1).

With reference back to FIG. 6, the temperature evaluator module 202receives the temperature data from the device application 82 on theconnectivity device 20. In one example, the temperature data includesoutside air temperature 220 and inside cabin temperature 222. Thetemperature evaluator module 202 evaluates the temperatures 220, 222 andselectively determines a start stage 224 based thereon. In variousembodiments, the start stage 224 can indicate the type or duration of avehicle start. For example the start stage 224 can indicate a vehiclestart with air conditioning start, a vehicle start with heater start, avehicle start with heated seats start, a three minute start, a fourminute start, a five minute start, a six minute start, etc. An exemplarystart stage determination method is shown in FIGS. 8 and 9.

The start/stop manager module 204 evaluates the start stage 224 andgenerates vehicle start and vehicle stop requests 226, 228 basedthereon. For example, when the start stage is a four minute start, thestart/stop manager module 204 generates a vehicle start request 226 andafter approximately four minutes of time has passed generates a vehiclestop request 228. The start/stop manager module 204 can further generatea vehicle stop request 228 at any time or when the vehicle 12 (FIG. 1)is operating based on the user initiated vehicle stop request 228.

With reference now to FIGS. 8 and 9, flowcharts illustrate an ecostartmethod that can be performed by a connectivity application in accordancewith exemplary embodiments. As can be appreciated in light of thedisclosure, the order of operation within the method is not limited tothe sequential execution as illustrated in FIGS. 8 and 9, but may beperformed in one or more varying orders as applicable and in accordancewith the present disclosure.

In one example, the method may begin at 300. The outside air temperatureand the inside cabin temperature are evaluated at 302-330. Based on theoutside air temperature and/or the inside cabin temperature, themessages are sent to start and stop the vehicle. For example, at 302, ifthe outside air temperature is greater than X degrees (e.g., eightdegrees Celsius), then the inside cabin temperature is evaluated at306-312. If the inside cabin temperature is greater than Y degrees(e.g., fifteen degrees Celsius) at 306, an air conditioning start methodis performed at 332. For example, a start message is generated and anair conditioning request is generated. After Z time (e.g., five minutes)has passed, the vehicle stop message is generated.

If, however, the inside cabin temperature is not greater than Y degreesat 306, rather it is greater than or equal to T degrees (e.g., tendegrees Celsius) at 308, the vehicle start message is generated andafter U time (e.g., three minutes) has passed, the vehicle stop messageis generated at 334. If, however, the inside cabin temperature is notgreater than or equal to T degrees at 308, rather it is greater than orequal to V degrees (e.g., five degrees Celsius) at 310, the vehiclestart message is generated and after W time (e.g., four minutes) haspassed, the vehicle stop message is generated at 336.

If, however, the inside cabin temperature is not greater than or equalto V degrees at 310, rather it is greater than or equal to A degrees(e.g., zero degrees Celsius) at 312, the vehicle start message isgenerated and after B time (e.g., five minutes) has passed, the vehiclestop message is generated at 338. If, however, the inside cabintemperature is not greater than or equal to A degrees at 312, thevehicle start message is generated and after C time (e.g., sevenminutes) has passed, the vehicle stop message is generated at 340.

At 302, if the outside air temperature is less than or equal to Xdegrees, and the outside air temperature is greater than or equal to Ddegrees (e.g., zero degrees Celsius) at 304, the inside cabintemperature is evaluated at 314-320. For example, if the inside cabintemperature is greater than E degrees (e.g., fifteen degrees Celsius) at314, a start message is generated and after F time (e.g., two minutes)has passed, the vehicle stop message is generated at 342.

If, however, the inside cabin temperature is not greater than E degreesat 314, rather it is greater than or equal to G degrees (e.g., tendegrees Celsius) at 316, the vehicle start message is generated andafter H time (e.g., four minutes) has passed, the vehicle stop messageis generated at 344. If, however, the inside cabin temperature is notgreater than or equal to G degrees at 316, rather it is greater than orequal to I degrees (e.g., five degrees Celsius) at 318, the vehiclestart message is generated and after J time (e.g., five minutes) haspassed, the vehicle stop message is generated 346.

If, however, the inside cabin temperature is not greater than or equalto I degrees at 318, rather it is greater than or equal to K degrees(e.g., zero degrees Celsius) at 320, the vehicle start message isgenerated and after L time (e.g., six minutes) has passed, the vehiclestop message is generated at 348. If, however, the inside cabintemperature is not greater than or equal to K degrees at 320, thevehicle start message is generated and after M time (e.g., eightminutes) has passed, the vehicle stop message is generated at 350.

At 304, if the outside air temperature is less than D degrees, theinside air temperature is evaluated at 324-330. For example, if theinside cabin temperature is greater than N degrees (e.g., fifteendegrees Celsius) at 324, a start message is generated and after O time(e.g., six minutes) has passed, the vehicle stop message is generated at352. If, however, the inside cabin temperature is not greater than Ndegrees at 324, rather it is greater than or equal to P degrees (e.g.,ten degrees Celsius) at 326, the vehicle start message is generated andafter Q time (e.g., seven minutes) has passed, the vehicle stop messageis generated at 354. If however, the inside cabin temperature is notgreater than or equal to P degrees at 326, rather it is greater than orequal to R degrees (e.g., five degrees Celsius) at 328, the vehiclestart message is generated and after S time (e.g., eight minutes) haspassed, the vehicle stop message is generated at 356.

If, however, the inside cabin temperature is not greater than or equalto R degrees at 328, rather it is greater than or equal to T′ degrees(e.g., zero degrees Celsius) at 330, the vehicle start message isgenerated and after U′ time (e.g., nine minutes) has passed, the vehiclestop message is generated at 358. If, however, the inside cabintemperature is not greater than or equal to T′ degrees at 330, thevehicle start message is generated and after V′ time (e.g., ten minutes)has passed, the vehicle stop message is generated at 360.

In various embodiments, the ecostart connectivity application 48 can beimplemented in computer program product. The computer program productincludes a tangible storage medium that is readable by a processingcircuit and that stores instructions for execution by the processingcircuit. The instructions carryout the methods of the ecostartconnectivity application 48.

In various embodiments, the methods of the ecostart connectivityapplication 48 can further be implemented in systems other than asdescribed above. For example, the methods can be implemented by onboardvehicle modules or other modules that communicate with the vehicle 12(FIG. 1).

While the invention has been described with reference to variousexemplary embodiments, it will be understood by those skilled in the artthat changes may be made and equivalents may be substituted for elementsthereof without departing from the scope of the invention. In addition,many modifications may be made to adapt a particular situation ormaterial to the teachings of the invention without departing from theessential scope thereof. Therefore, it is intended that the inventionnot be limited to the particular embodiments disclosed as the best modecontemplated for carrying out this invention, but that the inventionwill include all embodiments falling within the scope of the presentapplication.

What is claimed is:
 1. A method of starting a vehicle using a remote device, comprising: transmitting, by the remote device, a device application to a computer processor-enabled connectivity device that is communicatively coupled to the vehicle, the device application configured to acquire vehicle data from the vehicle and transmit the vehicle data to the remote device upon request from the remote device; acquiring, via the device application in the vehicle, the vehicle data from the vehicle; transmitting, via the device application in the vehicle, the vehicle data to the remote device upon request from the remote device; receiving, by user input to the remote device, a start request; transmitting a request for a first temperature associated with the vehicle to the device application, the first temperature identified as the vehicle data; receiving the first temperature from the computer processor-enabled connectivity device; evaluating the first temperature at the remote device; initiating starting of the vehicle by generating a signal to the vehicle based on the start request and the first temperature; and evaluating a second temperature at the remote device, and wherein the initiating the starting of the vehicle includes: evaluating the first temperature in view of the second temperature; and initiating a heating, air conditioning, and ventilation system function on the vehicle when the first temperature exceeds a first threshold value and the second temperature exceeds a second threshold value, the first threshold value is different than the second threshold value.
 2. The method of claim 1, wherein the first temperature is outside air temperature.
 3. The method of claim 1, wherein the first temperature is inside cabin temperature.
 4. The method of claim 1, wherein the first temperature is outside air temperature and the second temperature is inside cabin temperature.
 5. The method of claim 1, further comprising selecting a start duration based on the first temperature.
 6. The method of claim 5, further comprising generating a stop request based on the start duration.
 7. The method of claim 1, further comprising selecting a start duration based on the first temperature and the second temperature.
 8. The method of claim 7, further comprising generating a stop request based on the start duration.
 9. The method of claim 1, further comprising initiating at least one of an air conditioning start request and a heater start request based on the first temperature.
 10. A system for starting a vehicle, comprising: a remote device including a computer processor; and a connectivity application executable by the computer processor, the connectivity application configured to implement a method, the method comprising: transmitting a device application to a computer processor-enabled connectivity device that is communicatively coupled to the vehicle, the device application configured to acquire vehicle data from the vehicle and transmit the vehicle data to the remote device upon request from the remote device; acquiring, via the device application in the vehicle, the vehicle data from the vehicle; transmitting, via the device application in the vehicle, the vehicle data to the remote device upon request from the remote device; receiving, by user input to the remote device, a start request; transmitting a request for a first temperature associated with the vehicle to the device application, the first temperature identified as the vehicle data; receiving the first temperature from the computer processor-enabled connectivity device; evaluating the first temperature at the remote device; initiating starting of the vehicle by generating a signal to the vehicle based on the start request and the first temperature; and evaluating a second temperature at the remote device, wherein the initiating the starting of the vehicle includes: evaluating the first temperature in view of the second temperature; and initiating a heating, air conditioning, and ventilation system function on the vehicle when the first temperature exceeds a first threshold value and the second temperature exceeds a second threshold value, the first threshold value is different than the second threshold value.
 11. The system of claim 10, wherein the computer-processor enabled connectivity device is removably coupled to the vehicle.
 12. The system of claim of claim 10, wherein the first temperature is outside air temperature.
 13. The system of claim 10, wherein the first temperature is inside cabin temperature.
 14. The system of claim 10, wherein the first temperature is outside air temperature and the second temperature is inside cabin temperature.
 15. The system of claim 10, wherein the connectivity application is further configured to implement: selecting a start duration based on the first temperature.
 16. The system of claim 15, wherein the connectivity application is further configured to implement: generating a stop request based on the start duration.
 17. The system of claim 10, wherein the connectivity application is further configured to implement: selecting a start duration based on the first temperature and the second temperature.
 18. The system of claim 17, wherein the connectivity application is further configured to implement: generating a stop request based on the start duration. 